Este método se puede considerar como la mezcla de "add()" y de "remove", ya que este puede tanto añadir como eliminar una clase de un elemento, más específicamente por defecto, este método determina si el elemento posee la clase definida, de poseerla este la elimina, y si se da el caso que no la posea la añade.
Ejemplo
Esta propiedad también cuenta con un segundo valor opcional, el cual se usa para forzar la clase, se trata de un valor booleano, el cual en el caso de ser "true" el método siempre añadirá la clase, si el elemento no la posee, y no la eliminará si esta ya es poseída por el elemento, por otro lado en el caso de definirse como "false" el método siempre que la encuentre eliminará la clase, y esta no será añadida por este.
En este ejemplo se aplicó la propiedad "toggle" al elemento seleccionado, con los valores de "grande" y "false", por lo que si el elemento posee la clase "grande" esta será eliminada.
Nota: Este método no solo modifica los valores del atributo "class", sino que a su vez también retorna valores booleanos, al igual que lo hace el método "contains", por lo tanto cuando el método añade la clase retorna "true" y cuando la elimina retorna "false".